home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 27 / Mac Magazin and MacEasy Magazine CD - Issue 27.iso / Grafik & Text / SGMLTool Folder / TEXTBOOK.DTD < prev    next >
Text File  |  1996-10-21  |  9KB  |  222 lines

  1. <!-- DOCTYPE textbook --
  2.     -- Known as "-//Addison-Wesley//DTD SGML Explained//EN" An SGML Application Conforming to International Standard ISO 8879 Standard Generalized Markup Language --
  3.      -- modified by KISI, 1996 -->
  4. <!-- General Entities -->
  5. <!ENTITY    amp    CDATA    "&"    -- & --    -- modified by KISI -->
  6. <!ENTITY    gt    CDATA    ">"    -- > --    -- modified by KISI -->
  7. <!ENTITY    lt    CDATA    "<"    -- < --    -- modified by KISI -->
  8. <!ENTITY    % phrases    "hp0|hpl|hp2|hp3|cit"    -- emphasized phrases and other inline information -->
  9. <!ENTITY    % lists    "li|gl|terms">
  10. <!ENTITY    % element    "xmp|lq|l|poem|table|adr|artwork|eqn"    -- elements of a paragraph starting on new line -->
  11. <!ENTITY    % topics    "top1|top2|top3">
  12. <!ENTITY    % refs    "hdref|figref|tableref|fnref|itref|citref"    -- references -->
  13. <!ENTITY    % copy    "p|note|%element;">
  14. <!ENTITY    % text    "%topics;|%copy;|%lists;"> 
  15. <!ENTITY    % floats    "fig|fn"    --items positioned relative to a page -->
  16. <!ENTITY    % prelims    "preface|foreword|acknowls|otherm">
  17. <!ENTITY    % titles    "h0t|h1t|h2t|h3t|h4t|h5t">
  18. <!-- Base document element -->
  19. <!ELEMENT    textbook    - O    (front,body,back?) +(%floats;|ix)>
  20. <!ATTLIST    textbook
  21.     version    CDATA    "1"    -- date or number,etc --
  22.     status    CDATA    ""
  23.     security    CDATA    #IMPLIED>
  24. <!ELEMENT    (body|appendix)    - O    (h0|h1)+    --body of text & appendices -->
  25. <!-- Highest division of body - e.g. Part -->
  26. <!ELEMENT    h0    - O    (h0t,(%text;)*, h1+)>
  27. <!-- Main division of text - e.g. Chapter --> 
  28. <!ELEMENT    (h1|%prelims;|glossary|bibliog)
  29.         - O    (h1t,(%text;)*, h2*)>
  30. <!-- Sections within main division -->
  31. <!ELEMENT    h2    - O    (h2t,(%text;)*,h3*)>
  32. <!-- Subsections within main division section -->
  33. <!ELEMENT    h3    - O    (h3t,(%text;)*,h4*)>
  34. <!-- Sub-subsections within main division sections --> 
  35. <!ELEMENT    h4    - O    (h4t,(%text;)*,h5*)>
  36. <!-- Lowest division of heading -->
  37. <!ELEMENT    h5    - O    (h5t,(%text;)+)>
  38. <!ATTLIST    (h0|h1|h2|h3|h4|h5|%prelims;|appendix|glossary|bibliog)
  39.     number    CDATA    ""    -- reference number --
  40.     id    ID    #IMPLIED
  41.     stitle    CDATA    #IMPLIED    -- short title -->
  42. <!-- Headings for divisions -->
  43. <!ELEMENT    (%titles;)    O O    (#PCDATA|q|%phrases;)*>
  44. <!ELEMENT    hdref    - -    (#PCDATA|%phrases;)*    --reference to heading -->
  45. <!ATTLIST    hdref
  46.     refid    IDREF    #REQUIRED
  47.     page    (yes|no|y|n)    y>
  48. <!-- Topics within sections -->
  49. <!ELEMENT    top1    - O    (th?,(%copy;|%lists;|top2)+)    -- first level topic -->
  50. <!ELEMENT    top2    - O    (th?,(%copy;|%lists;|top3)+)    -- second level topic -->
  51. <!ELEMENT    top3    - O    (th?,(%copy;|%lists;)+)    -- third level topic -->
  52. <!ELEMENT    (th|hd)    - O    (#PCDATA|q|%phrases;)*>
  53. <!ATTLIST    (top1|top2|top3|hd)
  54.     id    ID    #IMPLIED>
  55. <!-- Basic text elements -->
  56. <!ELEMENT    p    - O    (#PCDATA|%phrases;|q|%element;|%lists;|%refs;)+    -- paragraph of text -->
  57. <!ELEMENT    note    - -    (#PCDATA|%phrases;|q|%element;|%lists;|%refs;|p)+    -- note in text -->
  58. <!ELEMENT    (%phrases;)    - -    (#PCDATA|%phrases;|q)+>
  59. <!ATTLIST    cit
  60.     id    ID    #IMPLIED>
  61. <!-- Elements within a paragraph -->
  62. <!ELEMENT    l    O O    (#PCDATA|q|%phrases;|%refs;)+    -- free-standing line of text -->
  63. <!ATTLIST    l
  64.     position    (left|right|centered|indented)    #CURRENT>
  65. <!ELEMENT    q    - -    (#PCDATA|q|%phrases;|%refs;)+    -- quotation embedded in text -->
  66. <!ELEMENT    lq    - -    (#PCDATA|%text;|h2|h3|h4|h5)+ -(fn)    -- long quotation -->
  67. <!ELEMENT    poem    - O    (pt,v+,cit?)>
  68. <!ELEMENT    pt    O O    (#PCDATA|%phrases;|q|l)*    -- title of poem -->
  69. <!ELEMENT    v    - O    (l+)    -- verse of poem -->
  70. <!ATTLIST    v
  71.     no    CDATA    "1">
  72. <!ELEMENT    adr    - O    (l+)    -- address -->
  73. <!-- Examples, illustrations and figures -->
  74. <!ELEMENT    xmp    - O    (#PCDATA|%copy;|%lists;)* -(xmp)>
  75. <!ATTLIST    xmp
  76.     style    CDATA    #IMPLIED 
  77.     keep    NMTOKEN    "all"
  78.     form    (lines|runon)    lines>
  79. <!ELEMENT    artwork    - O    EMPTY>
  80. <!ATTLIST    artwork    -- modified by KISI --
  81.     file    CDATA    #IMPLIED>
  82. <!--
  83. ATTLIST    artwork
  84.     sizex    NMTOKEN    textsize
  85.     sizey    NUTOKEN    #REQUIRED
  86.     file    ENTITY    #IMPLIED
  87. -->
  88. <!-- Figure = artwork/text + caption or other identifier -->
  89. <!ELEMENT    fig    - -    (figbody,(figcap,figdesc?)?)    -- figure -->
  90. <!ATTLIST    fig
  91.     id    ID    #IMPLIED 
  92.     number    CDATA    ""
  93.     frame    (box|rules|none)    none
  94.     position    (top|bottom|middle|asfound)    asfound
  95.     type    (column|page)    page
  96.     align    (left|right|centre)    centre>
  97. <!ELEMENT    figbody    O O    (%copy;|%lists;)+    -- body of figure -->
  98. <!ATTLIST    figbody
  99.     form    (lines|runon)    lines>
  100. <!ELEMENT    figcap    - O    (#PCDATA|%phrases;)*    -- caption of figure -->
  101. <!ELEMENT    figdesc    - O    (#PCDATA|%copy;|%lists;)*    -- description of figure -->
  102. <!-- Tables -->
  103. <!ELEMENT    table    - -    (nt?,ht?,hc?,bt+,ft?)>
  104. <!ATTLIST    table
  105.     id    ID    #IMPLIED
  106.     cols    NUMBER    #REQUIRED
  107.     tabs    CDATA    "1 1O 20 30 40 50 60 70"
  108.     type    (code|file)    code 
  109.     file    CDATA    #IMPLIED>
  110. <!ELEMENT    nt    - O    (#PCDATA|%phrases;)*    -- number, or other identifier, of table -->
  111. <!ELEMENT    ht    - O    (#PCDATA|q|%phrases;|%text;)*    -- heading of table -->
  112. <!ELEMENT    hc    - O    (r)+ -(bt,ft)    -- heading of columns -->
  113. <!ELEMENT    bt    - O    (r)+    -- body of table -->
  114. <!ELEMENT    ft    - O    (r)+ -(hc,bt)    -- foot of table -->
  115. <!ATTLIST    (hc|bt|ft)
  116.     cols    NUMBER    #IMPLIED>
  117. <!ELEMENT    r    O O    (c|hc|bt|ft)+    -- row in table -->
  118. <!ELEMENT    c    - O    (#PCDATA|q|%phrases;|%refs;|(hd?|(%text;)))*    -- cell of table -->
  119. <!ATTLIST    c
  120.     straddle    NUMBER    1>
  121. <!ELEMENT    (figref|tableref|citref)    -- x-ref to fig/table --
  122.         - O    (#PCDATA|%phrases;|q)* -(cit)>
  123. <!ATTLIST    (figref|tableref|citref)
  124.     refid    IDREF    #CONREF
  125.     page    (yes|no|y|n)    no>
  126. <!-- Lists -->
  127. <!ELEMENT    li    - -    (it+)    -- list of items -->
  128. <!ATTLIST    li
  129.     number    (arabic|roman|alpha|default|none)    default 
  130.     start    CDATA    "1" 
  131.     form    (compact|spaced)    spaced>
  132. <!ELEMENT    it    O O    (#PCDATA|%copy;|li|q|%phrases;)*    -- item in list -->
  133. <!ATTLIST    it
  134.     id    ID    #IMPLIED>
  135. <!ELEMENT    itref    - O    EMPTY    -- generated item reference -->
  136. <!ATTLIST    itref
  137.     refid    IDREF    #REQUIRED
  138.     page    (yes|no|y|n)    yes>
  139. <!-- Glossary style list -->
  140. <!ELEMENT    gl    - -    (hd?,(gt,(gd|gdg))*) --glossary list -->
  141. <!ATTLIST    gl
  142.     form    (compact|spaced)    spaced
  143.     termhi    NUMBER    2>
  144. <!ELEMENT    gt    O O    (#PCDATA|q|%phrases;)*    -- glossary term -->
  145. <!ELEMENT    gdg    - O (gd+)    -- group of definitions for glossary term (normally numbered) -->
  146. <!ATTLIST    gdg
  147.     number    (arabic|roman|alpha|default|none)    default>
  148. <!ELEMENT    gd    O O    (#PCDATA|%copy;|li|q|%phrases;|%refs;)*    -- definition of glossary term -->
  149. <!ATTLIST    gd
  150.     source    CDATA    ""
  151.     see    IDREF    #IMPLIED
  152.     seealso    IDREF    #IMPLIED>
  153. <!-- List of term definitions. etc -->
  154. <!ELEMENT    terms    - -    ((dthd?,ddhd?)?,(dt,dd+)*)    -- list of terms -->
  155. <!ATTLIST    terms
  156.     style    (columns|runon)    runon>
  157. <!ELEMENT    (dthd|ddhd)    - O    (#PCDATA)    -- headings for columns -->
  158. <!ATTLIST    (dthd|ddhd)
  159.     style    (roman|bold|italic|smallcap)    roman>
  160. <!ELEMENT    dt    O O    (#PCDATA|%phrases;|q)*    -- defined term -->
  161. <!ATTLIST    (gt|dt)
  162.     id    ID    #IMPLIED>
  163. <!ELEMENT    dd    - O    (#PCDATA|q|%phrases;|%refs;|%copy;)*    -- definition description -->
  164. <!-- Other elements of text -->
  165. <!ELEMENT    fn    - -    (#PCDATA|q|%phrases;|%refs;|%copy;)* -(%floats;)    -- footnote -->
  166. <!ATTLIST    fn
  167.     id    ID    #IMPLIED
  168.     type    (ednote|authnote)    authnote>
  169. <!ELEMENT    fnref    - O    EMPTY    --generated reference to footnote-->
  170. <!ATTLIST    fnref
  171.     refid    IDREF    #REQUIRED 
  172.     page    (yes|y|no|n)    no>
  173. <!ELEMENT    ix    - O    (#PCDATA)    -- index entry -->
  174. <!ATTLIST    ix
  175.     id    ID    #IMPLIED
  176.     print    CDATA     #IMPLIED
  177.     linkwith    NAMES    #IMPLIED
  178.     andwith    NAMES    #IMPLIED
  179.     see    CDATA    "">
  180. <!ELEMENT    eqn    - -    RCDATA    -- equation -->
  181. <!ATTLIST    eqn
  182.     type    NOTATION    (a-w|tex|setm)    a-w    >
  183. <!--NOTATION    a-w    PUBLIC    -//Addison-Wesley//NOTATION maths//EN"    -->
  184. <!--NOTATIDN    tex    PUBLIC    -//local//NOTATION TEX Formulae//EN"    -->
  185. <!--NOTATION    setm    PUBLIC    -//BSI//NOTATION SETM coding//EN"    -->
  186. <!-- Elements used in preliminary pages -->
  187. <!ELEMENT    front    O O    (titlep&details*&toc?&figlist?&(%prelims;)*)    -- preliminary pages -->
  188. <!ELEMENT    titlep    - O    (title&(author|editor)*&docnum?&abstract?&publishr?&date?&(%text;)*)    -- title page -->
  189. <!ELEMENT    title    - O    (tline+&subtitle*)    -- modified by KISI -->
  190. <!--
  191. ELEMENT    title    - O    ((#PCDATA|l|q|%phrases;)+|(tline+&subtitle*))
  192. -->
  193. <!ATTLIST    title
  194.     htitle    CDATA    #IMPLIED    -- half title --
  195.     running    CDATA    #IMPLIED    -- shorter title for running head/reference -->
  196. <!ELEMENT    tline    - -    (#PCDATA|l+)    -- modified by KISI -->
  197. <!--
  198. ELEMENT    tline    O O    (#PCDATA|l+)
  199. -->
  200. <!ELEMENT    subtitle    - O    (#PCDATA|%copy;)+>
  201. <!ELEMENT    (author|editor)    - O    (name,position*)>
  202. <!ELEMENT    name    O O    (#PCDATA|%phrases;)*    -- name to be printed -->
  203. <!ELEMENT    position    - O    (#PCDATA|l+)    -- one or more lines of text describing position(s) held or qualifications -->
  204. <!ELEMENT    docnum    - O    (#PCDATA|ISBN)    -- unique document number -->
  205. <!ELEMENT    ISBN    - -    CDATA    -- ISBN (or ISSN) number -->
  206. <!ATTLIST    ISBN
  207.     type    (book|serial)    book>
  208. <!ELEMENT    abstract    - O    (#PCDATA|%copy;)+    -- abstract of paper, etc -->
  209. <!ELEMENT    publishr    - O    (name&(%text;))*    -- publisher details -->
  210. <!ELEMENT    date    - O    (#PCDATA|%copy;)+    -- publication date (freeform) -->
  211. <!ELEMENT    details    - O    (copyrite?&publishr?&colophon*&ISBN*&BLCIP?&LibCong?&dedicate*&related*)    -- other details of book -->
  212. <!ELEMENT    copyrite    - O    (#PCDATA|%copy;)+    -- copyright details -->
  213. <!ELEMENT    colophon    - O    (#PCDATA|%copy;)+    --details of printer, etc-->
  214. <!ELEMENT    dedicate    - O    (#PCDATA|%copy;)+    -- dedication of book -->
  215. <!ELEMENT    LibCong    - O    (#PCDATA|%copy;)+    -- Library of Congress Cataloguing in Publication Data -->
  216. <!ELEMENT    BLCIP    - O    (#PCDATA|%copy;)+    -- British Library Cataloguing in Publication Data -->
  217. <!ELEMENT    related    - O    (hd,(%copy;)+)    -- details of related titles -->
  218. <!-- hd is automatically implied by <related> . but can be blank as text within hd is optional -->
  219. <!ELEMENT    (toc|figlist|index)    -- items generated automatically -- 
  220.     - O    EMPTY    -- from contents of body and back --> 
  221. <!ELEMENT    back    - O    ((appendix|glossary|bibliog|otherm)* &index?)    -- matter after main text -->
  222.